[IA64] Fix ia64 build for 22396:c1b7aae86cf5
authorKUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
Sat, 16 Jul 2011 08:17:20 +0000 (09:17 +0100)
committerKUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
Sat, 16 Jul 2011 08:17:20 +0000 (09:17 +0100)
The header xen/include/xen/wait.h conflicts with
xen/include/asm-ia64/linux/wait.h on ia64.
This patch fixes it.

# xen/include/xen/wait.h introduced by 22396:c1b7aae86cf5.

Signed-off-by: KUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
xen/include/asm-ia64/linux-xen/linux/README.origin
xen/include/asm-ia64/linux-xen/linux/completion.h [new file with mode: 0644]
xen/include/asm-ia64/linux-xen/linux/kobject.h
xen/include/asm-ia64/linux/README.origin
xen/include/asm-ia64/linux/completion.h [deleted file]

index 7639720a9d703993ebc4c62761b4dcbd88e1d9ca..fa59162b6e95f8251a483607470a91ec10e59661 100644 (file)
@@ -16,6 +16,7 @@ oprofile.h            -> linux/include/linux/oprofile.h
 pci.h                  -> linux/include/linux/pci.h
 kobject.h              -> linux/include/linux/kobject.h
 device.h               -> linux/include/linux/device.h
+completion.h           -> linux/include/linux/completion.h
 
 # The files below are from Linux-2.6.21
 cpu.h                  -> linux/include/linux/cpu.h
diff --git a/xen/include/asm-ia64/linux-xen/linux/completion.h b/xen/include/asm-ia64/linux-xen/linux/completion.h
new file mode 100644 (file)
index 0000000..2054930
--- /dev/null
@@ -0,0 +1,61 @@
+#ifndef __LINUX_COMPLETION_H
+#define __LINUX_COMPLETION_H
+
+/*
+ * (C) Copyright 2001 Linus Torvalds
+ *
+ * Atomic wait-for-completion handler data structures.
+ * See kernel/sched.c for details.
+ */
+
+#include <linux/wait.h>
+
+struct completion {
+       unsigned int done;
+#ifndef XEN
+       wait_queue_head_t wait;
+#endif
+};
+
+#define COMPLETION_INITIALIZER(work) \
+       { 0, __WAIT_QUEUE_HEAD_INITIALIZER((work).wait) }
+
+#define COMPLETION_INITIALIZER_ONSTACK(work) \
+       ({ init_completion(&work); work; })
+
+#define DECLARE_COMPLETION(work) \
+       struct completion work = COMPLETION_INITIALIZER(work)
+
+/*
+ * Lockdep needs to run a non-constant initializer for on-stack
+ * completions - so we use the _ONSTACK() variant for those that
+ * are on the kernel stack:
+ */
+#ifdef CONFIG_LOCKDEP
+# define DECLARE_COMPLETION_ONSTACK(work) \
+       struct completion work = COMPLETION_INITIALIZER_ONSTACK(work)
+#else
+# define DECLARE_COMPLETION_ONSTACK(work) DECLARE_COMPLETION(work)
+#endif
+
+static inline void init_completion(struct completion *x)
+{
+       x->done = 0;
+#ifndef XEN
+       init_waitqueue_head(&x->wait);
+#endif
+}
+
+extern void FASTCALL(wait_for_completion(struct completion *));
+extern int FASTCALL(wait_for_completion_interruptible(struct completion *x));
+extern unsigned long FASTCALL(wait_for_completion_timeout(struct completion *x,
+                                                  unsigned long timeout));
+extern unsigned long FASTCALL(wait_for_completion_interruptible_timeout(
+                       struct completion *x, unsigned long timeout));
+
+extern void FASTCALL(complete(struct completion *));
+extern void FASTCALL(complete_all(struct completion *));
+
+#define INIT_COMPLETION(x)     ((x).done = 0)
+
+#endif
index d072d2a90c7a7b207a66b96ff8a0368913db8406..9ecd705d22288bdf345a84e8b1d9fd6cf142665f 100644 (file)
@@ -58,7 +58,9 @@ struct kobject {
        struct kset             * kset;
        struct kobj_type        * ktype;
        struct dentry           * dentry;
+#ifndef XEN
        wait_queue_head_t       poll;
+#endif
 };
 
 extern int kobject_set_name(struct kobject *, const char *, ...)
index 527c2d32926d8258310e2a2504b32b273df5b5e7..f6a853de91644a60f664b3cb81eca71a5c81b2fb 100644 (file)
@@ -24,7 +24,6 @@ topology.h            -> linux/include/linux/topology.h
 wait.h                 -> linux/include/linux/wait.h
 
 # The files below are from Linux-2.6.19
-completion.h           -> linux/include/linux/completion.h
 ioport.h               -> linux/include/linux/ioport.h
 klist.h                        -> linux/include/linux/klist.h
 kref.h                 -> linux/include/linux/kref.h
diff --git a/xen/include/asm-ia64/linux/completion.h b/xen/include/asm-ia64/linux/completion.h
deleted file mode 100644 (file)
index 268c5a4..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-#ifndef __LINUX_COMPLETION_H
-#define __LINUX_COMPLETION_H
-
-/*
- * (C) Copyright 2001 Linus Torvalds
- *
- * Atomic wait-for-completion handler data structures.
- * See kernel/sched.c for details.
- */
-
-#include <linux/wait.h>
-
-struct completion {
-       unsigned int done;
-       wait_queue_head_t wait;
-};
-
-#define COMPLETION_INITIALIZER(work) \
-       { 0, __WAIT_QUEUE_HEAD_INITIALIZER((work).wait) }
-
-#define COMPLETION_INITIALIZER_ONSTACK(work) \
-       ({ init_completion(&work); work; })
-
-#define DECLARE_COMPLETION(work) \
-       struct completion work = COMPLETION_INITIALIZER(work)
-
-/*
- * Lockdep needs to run a non-constant initializer for on-stack
- * completions - so we use the _ONSTACK() variant for those that
- * are on the kernel stack:
- */
-#ifdef CONFIG_LOCKDEP
-# define DECLARE_COMPLETION_ONSTACK(work) \
-       struct completion work = COMPLETION_INITIALIZER_ONSTACK(work)
-#else
-# define DECLARE_COMPLETION_ONSTACK(work) DECLARE_COMPLETION(work)
-#endif
-
-static inline void init_completion(struct completion *x)
-{
-       x->done = 0;
-       init_waitqueue_head(&x->wait);
-}
-
-extern void FASTCALL(wait_for_completion(struct completion *));
-extern int FASTCALL(wait_for_completion_interruptible(struct completion *x));
-extern unsigned long FASTCALL(wait_for_completion_timeout(struct completion *x,
-                                                  unsigned long timeout));
-extern unsigned long FASTCALL(wait_for_completion_interruptible_timeout(
-                       struct completion *x, unsigned long timeout));
-
-extern void FASTCALL(complete(struct completion *));
-extern void FASTCALL(complete_all(struct completion *));
-
-#define INIT_COMPLETION(x)     ((x).done = 0)
-
-#endif